
import Cookies from "js-cookie";
//存缓存
// Cookie.set（存储的名字 ，存储的值，存储的天数）
export const SetCookie = (name , Cookie)=>{//缓存的名字 ， 存储的数据值
    Cookies.set(name , Cookie , {expires:7})
}
// 取缓存 
// Cookies.get(获取缓存的名字) 返回的当前缓存的值
export const GetCookie = name => Cookies.get(name);
// 删除缓存
// Cookie.remove(需要删除的缓存的名字)
export const RemoveCookie =(name)=>{
    Cookies.remove(name)
}
// 本地库存 放大量的数据
// 存缓存(存入的名字，存入的数据(不能是引用数据类型))
export const setStore = (name , obj)=>{
    window.localStorage.setItem(name , obj)
}
// 取缓存
export const getStore = name=>window.localStorage.getItem(name);
// 删除指定缓存(指定缓存名)
export const removeStore = name=>window.localStorage.removeItem(name);
// 清楚用户电脑里面所有的本地缓存 (场景：退出登录)
export const clearStore = ()=>window.localStorage.clear();


// 防null处理
// 不是所有的项目都要防null
// 当你发现后端返回的本来是一个对象 {} 但是突然发现变成null 你再防null
// 不知道 也没法预测哪一个接口哪个对象会式null
// 我们只能递归 
// 当值为null就变成{} 当值为"null"就变成 ""
// resp后端返回的数据
export const setnullString = (resp)=>{
    if(!resp){
        resp={}
    }
    for(let i in resp){
        if(resp[i] && typeof(resp[i])== "object"){
            setnullString(resp[i])
        }else{
            if(Object.is(resp[i],null)){
                resp[i]={}
            }else if(resp[i]==="null"){
                resp[i] =""
            }
        }
    }
    return resp
}

